package com.xunsiya.module.media.dao;

import com.xunsiya.module.media.vo.Media;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 图像Mapper
 *
 * @version 1.0
 * @author: xml
 * @date: 2018/10/31
 */
public interface MediaMapper {

    /**
     * 保存指纹
     *
     * @param media
     */
    public void saveSift(Media media);

    /**
     * 查询数量
     *
     * @param media
     * @return
     */
    public int queryCount(Media media);

    /**
     * 分页查询
     *
     * @param media
     * @param pageStart
     * @param pageSize
     * @return
     */
    public List<Media> queryForPage(@Param("media") Media media,
                                    @Param("pageStart") int pageStart,
                                    @Param("pageSize") int pageSize);

    /**
     * 根据MD5进行查询
     *
     * @param md5
     * @param companyId
     * @return
     */
    public List<Media> querySiftByMd5(@Param("md5") String md5, @Param("companyId") int companyId);

    /**
     * 更新状态
     *
     * @param media
     */
    public void updateSiftStatus(Media media);

    /**
     * 根据MD5和companyId进行查询
     *
     * @param md5
     * @param companyId
     * @return
     */
    public Media queryMediaByMd5(@Param("md5") String md5, @Param("companyId") int companyId);

    /**
     * 根据id查询
     *
     * @param id
     * @return
     */
    public Media querySiftById(int id);

    /**
     * 根据id删除指纹
     *
     * @param id
     */
    public void deleteSiftById(int id);

    /**
     * 修改图像
     *
     * @param media
     * @return
     */
    public void update(Media media);
}
